import { useStore } from "@/stores/index1";
import { useStoreData } from "@/stores/data";
import { graphicLayer } from "@/utils/initMap";
import mars from "@/config/mars3d";
import * as lodash from "lodash";
const store = useStore();
const storeData = useStoreData();
import * as graphicStyle from "@/config/property.config";
import type { name } from "mars3d";
import subject from "@/config/mars3d";

const fn: any = {
    /**
     * 矢量工具
     *
     * api属性配置文档 http://mars3d.cn/api.html
     */
    tool: (type: string) => {
        switch (type) {
            case "print":
                // 地图打印
                store.tool.print.show = true;
                //
                break;
            default:
                // 打开之前关闭当前打开的窗口
                const toolKeys = Object.keys(store.tool);
                toolKeys.forEach((v) => {
                    if (store.tool[v] === true) {
                        store.tool[v] = false;
                    }
                });
                store.tool[type] = true;
        }
    },
    /**
     * 图上文字
     */
    graphicText: {
        /**
         * 标绘--文字
         */
        label: (type: string) => {
            const defaultText: string = "三峡农夫智慧果园地图系统";
            if (type == "label") {
                // 普通文字
                graphicLayer.startDraw({
                    type: "label",
                    folderId: storeData.treeDefaultKey,
                    icon: "",
                    plottingName: "label", // 标绘显示类型名称
                    plottingType: "ordinaryText", // 标绘类型
                    name: "普通文字", // 标绘样式名称
                    number: `${type}${new Date().getTime()}`,
                    style: {
                        text: defaultText, // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "rgba(0,129,194,1)", // 文本颜色
                        font_size: 27, // 字体大小
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        scaleByDistance: true, // 是否按视距缩放 或 设定基于与相机的距离设置比例。
                        scaleByDistance_far: 1000000, // 上限
                        scaleByDistance_farValue: 0.1, // 上限比例值
                        scaleByDistance_near: 1000, // 下限
                        scaleByDistance_nearValue: 1, // 下限比例值
                        distanceDisplayCondition: true, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                        distanceDisplayCondition_far: 100000, // 最大距离
                        distanceDisplayCondition_near: 0, // 最小距离
                        visibleDepth: false,
                    },
                });
            } else if (type == "walllabel") {
                // 文字--立面文字
                graphicLayer.startDraw({
                    type: "wall",
                    folderId: storeData.treeDefaultKey,
                    icon: "",
                    plottingName: "wallLabel",
                    plottingType: "facadeText", // 标绘类型
                    name: "立面文字",
                    number: `walllabel${new Date().getTime()}`,
                    maxPointNum: 2,
                    style: {
                        diffHeight: 50,
                        materialType: mars.mars3d.MaterialType.Text,
                        outline: false, // 是否边框
                        outlineWidth: 1, // 边框宽度
                        outlineColor: "#ffffff", // 边框颜色
                        materialOptions: {
                            text: defaultText,
                            font_size: 50,
                            color: "rgba(0,129,194,1)",
                            font_family: "宋体",
                            font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                            font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                            stroke: false, // 是否描边文本
                            strokeColor: "#ffffff", // 描边的颜色
                            strokeWidth: 1, // 描边的宽度
                            background: false, // 是否背景
                            backgroundColor: "#ffffff", // 背景颜色
                            backgroundPadding: 0, // 背景内边距，指定文字与填充边界内容之间的空间(以像素为单位)。
                        },
                        clampToGround: true,
                        distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                        distanceDisplayCondition_far: 100000, // 最大距离
                        distanceDisplayCondition_near: 0, // 最小距离
                    },
                });
            } else if (type == "rotatelabel") {
                /**
                 * 旋转贴地文字设置旋转时间算法
                 */
                let rotation = mars.Cesium.Math.toRadians(30);
                function getRotationValue() {
                    rotation += 0.005;
                    return rotation;
                }
                // 文字--贴地旋转文字
                graphicLayer.startDraw({
                    type: "rectangle",
                    folderId: storeData.treeDefaultKey,
                    icon: "",
                    plottingName: "rotateLabel",
                    plottingType: "rotateText", // 标绘类型
                    name: "贴地旋转文字",
                    number: `rotatelabel${new Date().getTime()}`,
                    style: {
                        materialType: mars.mars3d.MaterialType.Text,
                        outline: false, // 是否边框
                        outlineWidth: 1, // 边框宽度
                        outlineColor: "#ffffff", // 边框颜色
                        materialOptions: {
                            text: defaultText,
                            font_size: 50,
                            color: "rgba(0,129,194,1)",
                            font_family: "宋体",
                            font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                            font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                            stroke: false, // 是否描边文本
                            strokeColor: "#ffffff", // 描边的颜色
                            strokeWidth: 1, // 描边的宽度
                            background: false, // 是否背景
                            backgroundColor: "#ffffff", // 背景颜色
                            backgroundPadding: 0, // 背景内边距，指定文字与填充边界内容之间的空间(以像素为单位)。
                        },
                        clampToGround: true,
                        rotation: new mars.Cesium.CallbackProperty(getRotationValue, false),
                        stRotation: new mars.Cesium.CallbackProperty(getRotationValue, false),
                        distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                        distanceDisplayCondition_far: 100000, // 最大距离
                        distanceDisplayCondition_near: 0, // 最小距离
                    },
                });
            } else if (type == "rectangle") {
                // 文字--跑马文字
                graphicLayer.startDraw({
                    type: "rectangle",
                    folderId: storeData.treeDefaultKey,
                    icon: "",
                    plottingName: "rotateLabel",
                    plottingType: "marqueeText", // 标绘类型
                    name: "跑马文字",
                    number: `rotatelabel${new Date().getTime()}`,
                    style: {
                        classificationType: mars.Cesium.ClassificationType.BOTH,
                        rotationDegree: 0,
                        clampToGround: true,
                        materialType: mars.mars3d.MaterialType.Text,
                        materialOptions: {
                            text: defaultText,
                            font_size: 50,
                            color: "rgba(0,129,194,1)",
                            font_family: "宋体",
                            font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                            font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                            stroke: false, // 是否描边文本
                            strokeColor: "#ffffff", // 描边的颜色
                            strokeWidth: 1, // 描边的宽度
                            background: false, // 是否背景
                            backgroundColor: "#ffffff", // 背景颜色
                            backgroundPadding: 0, // 背景内边距，指定文字与填充边界内容之间的空间(以像素为单位)。
                            speed: 5,
                        },
                        distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                        distanceDisplayCondition_far: 100000, // 最大距离
                        distanceDisplayCondition_near: 0, // 最小距离
                        outline: false, // 是否边框
                        outlineWidth: 1, // 边框宽度
                        outlineColor: "#ffffff", // 边框颜色
                    },
                });
            }
        },
    },
    /**
     * 图上标点
     */
    punctuation: {
        /**
         * 图标点
         */
        point: () => {
            graphicLayer.startDraw({
                type: "billboard",
                plottingName: "iconPoint", // 标绘显示类型名称
                plottingType: "iconPoint", // 标绘类型
                name: "图标点", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `iconPoint${new Date().getTime()}`,
                style: {
                    image: "http://mars3d.cn/img/marker/mark-blue.png", // 用于矢量对象的 图像、URI或Canvas
                    scale: 1, // 图像大小的比例
                    rotationDegree: 0, // 旋转角度（度数值，0-360度），与rotation二选一
                    scaleByDistance: true, // 是否按视距缩放 或 设定基于与相机的距离设置比例。
                    scaleByDistance_far: 1000000, // 上限
                    scaleByDistance_farValue: 0.1, // 上限比例值
                    scaleByDistance_near: 1000, // 下限
                    scaleByDistance_nearValue: 1, // 下限比例值
                    distanceDisplayCondition: true, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    visibleDepth: false, // 是否被遮挡
                    clampToGround: true, // 是否贴地
                    isLabel: false, // 是否文字
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                },
            });
        },
    },
    /**
     * 图上线段
     */
    segment: {
        /**
         * 线段
         */
        polyline: () => {
            graphicLayer.startDraw({
                type: "polyline",
                plottingName: "polyline", // 标绘显示类型名称
                plottingType: "segment", // 标绘类型
                name: "线段", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `polyline${new Date().getTime()}`,
                style: {
                    color: "rgba(0,129,194,1)",
                    width: 2,
                    clampToGround: true,
                    materialType: "Color", // 线型
                    materialOptions: {
                        color: "rgba(0,129,194,1)",
                    },
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    visibleDepth: false, // 是否被遮挡
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 曲线
         */
        curve: () => {
            graphicLayer.startDraw({
                type: "curve",
                plottingName: "curveline", // 标绘显示类型名称
                plottingType: "curve", // 标绘类型
                name: "曲线", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `curveline${new Date().getTime()}`,
                style: {
                    color: "rgba(0,129,194,1)",
                    width: 2,
                    clampToGround: true,
                    materialType: "Color", // 线型
                    materialOptions: {
                        color: "rgba(0,129,194,1)",
                    },
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    visibleDepth: false, // 是否被遮挡
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 管道
         */
        polylineVolume: () => {
            // graphicLayer.startDraw({
            //     type: "polylineVolume",
            //     // maxPointNum: 2, //可以限定最大点数，2个点绘制后自动结束
            //     style: {
            //         shape: "pipeline",
            //         radius: 20,
            //         color: "#00ffff",
            //         opacity: 0.9,
            //     },
            // });
            // return;
            graphicLayer.startDraw({
                type: "polylineVolume",
                plottingName: "polylineVolume", // 标绘显示类型名称
                plottingType: "pipeline", // 标绘类型
                name: "管道", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `polylineVolume${new Date().getTime()}`,
                style: {
                    shape: "pipeline",
                    radius: 50,
                    thicknes: 3,
                    slices: 100,
                    color: "rgba(0,129,194,1)",
                    startAngle: 0,
                    endAngle: 360,
                    // materialType: "Color", // 线型
                    distanceDisplayCondition: true, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    visibleDepth: false, // 是否被遮挡
                    clampToGround: true, // 是否贴地
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 走廊
         */
        corridor: () => {
            graphicLayer.startDraw({
                type: "corridor",
                plottingName: "corridor", // 标绘显示类型名称
                plottingType: "corridor", // 标绘类型
                name: "走廊", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `corridor${new Date().getTime()}`,
                style: {
                    width: 2, // 走廊宽度，指定走廊边缘之间的距离。
                    color: "rgba(0,129,194,1)", // 颜色
                    outline: false, // 是否边框
                    outlineWidth: 1, // 边框宽度
                    outlineColor: "#FF0000", // 边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地-设置后高程和高度无效
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 围栏
         */
        wall: () => {
            graphicLayer.startDraw({
                type: "wall",
                plottingName: "fence", // 标绘显示类型名称
                plottingType: "rail", // 标绘类型
                name: "围栏", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `fence${new Date().getTime()}`,
                style: {
                    diffHeight: 30, // 墙高，
                    fill: true, // 是否填充
                    materialType: "Color", // 填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,1)",
                    }, // 材质参数
                    closure: false, // 是否闭合, 在positions是属性机制的回调对象时无效
                    outline: false, // 是否边框
                    outlineWidth: 1, // 边框宽度
                    outlineColor: "#FF0000", // 边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 道路
         */
        road: () => {
            graphicLayer.startDraw({
                type: "road",
                plottingName: "road", // 标绘显示类型名称
                plottingType: "road", // 标绘类型
                name: "道路", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `road${new Date().getTime()}`,
                style: {
                    image: "http://mars3d.cn/img/textures/road.jpg", // 道路-图片材质URL
                    width: 5, // 道路 宽度。(单位：米)
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
    },
    /**
     * 二维平面
     */
    twodimension: {
        /**
         * 平面
         */
        plane: () => {
            graphicLayer.startDraw({
                type: "plane",
                plottingName: "plane", // 标绘显示类型名称
                plottingType: "plane", // 标绘类型
                name: "平面", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `plane${new Date().getTime()}`,
                style: {
                    dimensions_x: 100, // 长度
                    dimensions_y: 100, // 宽度
                    plane_normal: "z", // 方向 ,可选项：x (解释：X轴),y (解释：Y轴),z (解释：Z轴),
                    plane_distance: 0, //偏移距离
                    heading: 0, //方向角 （度数值，0-360度）
                    pitch: 0, //俯仰角（度数值，0-360度）
                    roll: 0, //翻滚角（度数值，0-360度）
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    visibleDepth: false, // 是否被遮挡
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 矩形
         */
        rectangle: () => {
            graphicLayer.startDraw({
                type: "rectangle",
                plottingName: "rectangle", // 标绘显示类型名称
                plottingType: "rectangle", // 标绘类型
                name: "矩形", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `rectangle${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: true, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 多边形
         */
        polygon: () => {
            graphicLayer.startDraw({
                type: "polygon",
                plottingName: "polygon", // 标绘显示类型名称
                plottingType: "polygon", // 标绘类型
                name: "多边形", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `polygon${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 正多边形
         */
        regular: () => {
            graphicLayer.startDraw({
                type: "regular",
                plottingName: "regular", // 标绘显示类型名称
                plottingType: "regular", // 标绘类型
                name: "正多边形", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `regular${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    border: 5,
                    radius: 10,
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: true, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 圆形
         */
        circle: () => {
            graphicLayer.startDraw({
                type: "circle",
                plottingName: "circle", // 标绘显示类型名称
                plottingType: "circle", // 标绘类型
                name: "圆形", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `circle${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: false, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
                // drawShowRadius: true,
            });
        },
        /**
         * 扇形
         */
        sector: () => {
            graphicLayer.startDraw({
                type: "sector",
                plottingName: "sector", // 标绘显示类型名称
                plottingType: "sector", // 标绘类型
                name: "扇形", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `sector${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    radius: 5,
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: false, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 椭圆
         */
        ellipse: () => {
            graphicLayer.startDraw({
                type: "ellipse",
                plottingName: "ellipse", // 标绘显示类型名称
                plottingType: "ellipse", // 标绘类型
                name: "椭圆", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `ellipse${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
    },
    /**
     * 三维立体
     */
    threedimensional: {
        /**
         * 立体
         */
        box: () => {
            graphicLayer.startDraw({
                type: "box",
                plottingName: "box", // 标绘显示类型名称
                plottingType: "box", // 标绘类型
                name: "立体", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `box${new Date().getTime()}`,
                style: {
                    dimensions_x: 10,
                    dimensions_y: 10,
                    dimensions_z: 10,
                    heading: 0,
                    pitch: 0,
                    roll: 0,
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: false, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 圆柱
         */
        circle: () => {
            graphicLayer.startDraw({
                type: "circle",
                plottingName: "circle", // 标绘显示类型名称
                plottingType: "column", // 标绘类型
                name: "圆柱", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `circle${new Date().getTime()}`,
                style: {
                    radius: 10,
                    diffHeight: 10,
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: false, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 椭圆柱
         */
        ellipse: () => {
            graphicLayer.startDraw({
                type: "ellipse",
                plottingName: "ellipse", // 标绘显示类型名称
                plottingType: "ellipticCylinder", // 标绘类型
                name: "椭圆柱", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                styleSource: ["threedimensional", "ellipticCylinder"],
                number: `ellipse${new Date().getTime()}`,
                style: {
                    fill: true, //是否填充
                    diffHeight: 10,
                    numberOfVerticalLines: 16,
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: false, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 圆锥
         */
        cylinder: () => {
            graphicLayer.startDraw({
                type: "cylinder",
                plottingName: "cylinder", // 标绘显示类型名称
                plottingType: "cylinder", // 标绘类型
                name: "圆锥", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `cylinder${new Date().getTime()}`,
                style: {
                    topRadius: 1,
                    bottomRadius: 10,
                    length: 10,
                    heading: 0,
                    pitch: 0,
                    roll: 0,

                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: true, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 球及椭球
         */
        ellipsoid: () => {
            graphicLayer.startDraw({
                type: "ellipsoid",
                plottingName: "ellipsoid", // 标绘显示类型名称
                plottingType: "ellipsoid", // 标绘类型
                name: "球及椭球", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `ellipsoid${new Date().getTime()}`,
                style: {
                    innerRadii_x: 10,
                    innerRadii_y: 10,
                    innerRadii_z: 10,
                    minimumClockDegree: 0,
                    maximumClockDegree: 360, //最大时钟角度（度数值，0-360度）
                    minimumConeDegree: 0,
                    maximumConeDegree: 360, //最大圆锥角（度数值，0-360度）
                    heading: 0,
                    pitch: 0,
                    roll: 0,
                    slicePartitions: 68,
                    stackPartitions: 68,
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                    },
                    outline: false, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
        /**
         * 雷达及半球
         */
        radar: () => {
            graphicLayer.startDraw({
                type: "ellipsoid",
                plottingName: "ellipsoidhemi", // 标绘显示类型名称
                plottingType: "radar", // 标绘类型
                name: "雷达及半球", // 标绘样式名称
                folderId: storeData.treeDefaultKey,
                icon: "",
                number: `ellipsoidhemi${new Date().getTime()}`,
                style: {
                    innerRadii_x: 10,
                    innerRadii_y: 10,
                    innerRadii_z: 10,
                    minimumClockDegree: 0,
                    maximumClockDegree: 360, //最大时钟角度（度数值，0-360度）
                    minimumConeDegree: 0,
                    maximumConeDegree: 90, //最大圆锥角（度数值，0-360度）
                    heading: 0,
                    pitch: 0,
                    roll: 0,

                    slicePartitions: 100,
                    stackPartitions: 100,
                    fill: true, //是否填充
                    materialType: "Color", //填充类型
                    materialOptions: {
                        color: "rgba(0,129,194,0.5)",
                        speed: 10,
                    },
                    outline: false, //是否边框
                    outlineWidth: 1, //边框宽度
                    outlineColor: "#FF0101", //边框颜色
                    distanceDisplayCondition: false, // 是否按视距显示 或 指定此框将显示在与摄像机的多大距离。
                    distanceDisplayCondition_far: 100000, // 最大距离
                    distanceDisplayCondition_near: 0, // 最小距离
                    clampToGround: true, // 是否贴地
                    label: {
                        // 支持附带文字的显示
                        text: "", // 文本内容，换行可以用换行符'\n'。
                        font_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        font_size: 30, // 字体大小
                        ont_family: "宋体", // 字体 ,可选项：微软雅黑,宋体,楷体,隶书,黑体 等
                        color: "#FF0101", // 文本颜色
                        outline: false, // 是否衬色
                        outlineColor: "#ffffff", // 衬色颜色
                        outlineWidth: 1, // 衬色宽度
                        visibleDepth: false, // 是否被遮挡
                        clampToGround: true, // 是否贴地
                        font_weight: "normal", // 是否加粗 ,可选项：bold (解释：是),normal (解释：否),
                        font_style: "normal", // 是否斜体 ,可选项：italic (解释：是),normal (解释：否),
                        background: false, // 是否背景
                        backgroundColor: "#ffffff", // 背景颜色
                        hasPixelOffset: false, // 是否存在偏移量
                        pixelOffsetX: 0, // 横向偏移像素
                        pixelOffsetY: 0, // 纵向偏移像素
                    },
                    isLabel: false, // 是否文字
                    isLength: false, // 是否长度
                },
            });
        },
    },
};
export default fn;
